from fastapi import APIRouter,Request,Query
from app.test.curd.test_curd import test_curd
from app.test.schema.test import Test

router = APIRouter()

@router.get('/test')
def return_get(
    item:Request,
    username:str = Query(''),
    password:str = Query('')
):
    '''
    -接口说明：查询当前用户所在的组下的所有正在进行的会议
    ## 请求参数
    |编号|参数名称|定义|类型|值域|备注|
    |:----|:----|:----|:----|:----|:----|
    |1|
    |<img width=50/>|<img width=100/>|<img width=80/>|<img width=80/>|<img width=150/>|<img width=200/>|

    ## 响应参数
    |编号|参数名称|定义|类型|值域|备注|
    |:----|:----|:----|:----|:----|:----|
    |1|
    |<img width=50/>|<img width=100/>|<img width=100/>|<img width=50/>|<img width=90/>|<img width=200/>|
    '''
    return test_curd.test_get(item.query_params)

@router.post('/test')
def return_post(item:Test):
    '''
    -接口说明：查询当前用户所在的组下的所有正在进行的会议
    ## 请求参数
    |编号|参数名称|定义|类型|值域|备注|
    |:----|:----|:----|:----|:----|:----|
    |1|
    |<img width=50/>|<img width=100/>|<img width=80/>|<img width=80/>|<img width=150/>|<img width=200/>|

    ## 响应参数
    |编号|参数名称|定义|类型|值域|备注|
    |:----|:----|:----|:----|:----|:----|
    |1|
    |<img width=50/>|<img width=100/>|<img width=100/>|<img width=50/>|<img width=90/>|<img width=200/>|
    '''
    return test_curd.test_post(item)

@router.get('/db')
def return_mongo(
    item:Request,
    db:str = Query(''),
    col:str = Query('')
    ):
    '''
    -接口说明：查询当前用户所在的组下的所有正在进行的会议
    ## 请求参数
    |编号|参数名称|定义|类型|值域|备注|
    |:----|:----|:----|:----|:----|:----|
    |1|
    |<img width=50/>|<img width=100/>|<img width=80/>|<img width=80/>|<img width=150/>|<img width=200/>|

    ## 响应参数
    |编号|参数名称|定义|类型|值域|备注|
    |:----|:----|:----|:----|:----|:----|
    |1|
    |<img width=50/>|<img width=100/>|<img width=100/>|<img width=50/>|<img width=90/>|<img width=200/>|
    '''
    return test_curd.test_mongo(item.query_params)

@router.get('/movie_sell_detail')
def get_all_num_by_days(
    item:Request,
    start_date:str = Query(''),
    end_date:str = Query(''),
    name:str = Query('')
    ):
    '''
    -接口说明：按照日查询电影的总票房数，范围是2020.07.20-当前，超出范围按上限2020.07.20，下限按当前时间计算
    ## 请求参数
    |编号|参数名称|定义|类型|值域|备注|
    |:----|:----|:----|:----|:----|:----|
    |1|start_date|起始时间|date||yyyy-mm-dd|
    |2|end_date|终止时间|date||yyyy-mm-dd|
    |3|name|电影名称|字符型|||
    |<img width=50/>|<img width=100/>|<img width=80/>|<img width=80/>|<img width=150/>|<img width=200/>|

    ## 响应参数
    |编号|参数名称|定义|类型|值域|备注|
    |:----|:----|:----|:----|:----|:----|
    |1|code|响应码|数值型|||
    |2|msg|响应信息|字符型||
    |3|res|响应结果|列表型|[[time,data],[time,date]]|
    |<img width=50/>|<img width=100/>|<img width=100/>|<img width=50/>|<img width=90/>|<img width=200/>|
    '''
    pass

@router.get('/movie_sort')
def sort_all_movie_by_daysMonths(
    item:Request,
    kind:int = Query(''),
    days:int = Query(''),
):
    '''
    -接口说明：按日/月查询具体电影的票房
    ## 请求参数
    |编号|参数名称|定义|类型|值域|备注|
    |:----|:----|:----|:----|:----|:----|
    |1|kind|查询类型|数值型|0，1|0代表查询电影，1代表查询类型|
    |2|days|查询日期类型|0，1|0代表查询日，1代表查询月|
    |3|date|查询的月数|数值型||如果查询月份传入2020或2021，查询日传入1-12|
    |<img width=50/>|<img width=100/>|<img width=80/>|<img width=80/>|<img width=150/>|<img width=200/>|

    ## 响应参数
    |编号|参数名称|定义|类型|值域|备注|
    |:----|:----|:----|:----|:----|:----|
    |1|code|响应码||数值型
    |2|msg|响应信息||字符型|||
    |3|res|返回结果|列表型||[{color:{name:color,name:color}},{data:[[para1,para2],[data1,data2],[data1,data2]]}]|
    |<img width=50/>|<img width=100/>|<img width=100/>|<img width=50/>|<img width=90/>|<img width=200/>|
    '''
    pass

@router.get('/person_rank')
def get_person_rank(
    item:Request,
    date:str = Query(''),
):
    '''
    -接口说明：查询当月的导演和明星的出现次数的top50
    ## 请求参数
    |编号|参数名称|定义|类型|值域|备注|
    |:----|:----|:----|:----|:----|:----|
    |1|data|查询的日期|字符型||yyyy-mm|
    |<img width=50/>|<img width=100/>|<img width=80/>|<img width=80/>|<img width=150/>|<img width=200/>|

    ## 响应参数
    |编号|参数名称|定义|类型|值域|备注|
    |:----|:----|:----|:----|:----|:----|
    |1|code|响应码|数值型|||
    |2|msg|响应信息|字符型|
    |3|res|返回信息|列表型||[{star:[s1,s2,s3....s50]},{director:[d1,d2....d50]}]|
    |<img width=50/>|<img width=100/>|<img width=100/>|<img width=50/>|<img width=90/>|<img width=200/>|
    '''
    pass

@router.get('/sell_range')
def get_sell_range(
    item:Request,
    date:str = Query('')
):
    '''
    -接口说明：查询当月的每日电影票房变化
    ## 请求参数
    |编号|参数名称|定义|类型|值域|备注|
    |:----|:----|:----|:----|:----|:----|
    |1|data|查询的日期|字符型||yyyy-mm|
    |<img width=50/>|<img width=100/>|<img width=80/>|<img width=80/>|<img width=150/>|<img width=200/>|

    ## 响应参数
    |编号|参数名称|定义|类型|值域|备注|
    |:----|:----|:----|:----|:----|:----|
    |1|code|响应码|数值型|||
    |2|msg|响应信息|字符型|
    |3|res|返回信息|列表型||[num1,num2,....,num31]|
    |<img width=50/>|<img width=100/>|<img width=100/>|<img width=50/>|<img width=90/>|<img width=200/>|
    '''
    pass

@router.get('/movie_sell')
def get_movie_sell(item:Request,date:str = Query('')):
    '''
    -接口说明：查询当月的每日电影票房变化
    ## 请求参数
    |编号|参数名称|定义|类型|值域|备注|
    |:----|:----|:----|:----|:----|:----|
    |1|data|查询的日期|字符型||yyyy-mm|
    |<img width=50/>|<img width=100/>|<img width=80/>|<img width=80/>|<img width=150/>|<img width=200/>|

    ## 响应参数
    |编号|参数名称|定义|类型|值域|备注|
    |:----|:----|:----|:----|:----|:----|
    |1|code|响应码|数值型|||
    |2|msg|响应信息|字符型|
    |3|res|返回信息|列表型||[[name,sells],[name,sells],[name,sells].....]|
    |<img width=50/>|<img width=100/>|<img width=100/>|<img width=50/>|<img width=90/>|<img width=200/>|
    '''
    pass